import pandas as pd

from utils.truncate import greater512

df = pd.read_csv('data/event_detection.csv', header=None, index_col=None)

# 22分类问题
query2id = {
    '其他': 0, '信批违规': 1, '实控人股东变更': 2, '交易违规': 3, '涉嫌非法集资': 4, '不能履职': 5, '重组失败': 6, '评级调整': 7, '业绩下滑': 8,
    '涉嫌违法': 9, '财务造假': 10, '涉嫌传销': 11, '涉嫌欺诈': 12, '资金账户风险': 13, '高管负面': 14, '资产负面': 15, '投诉维权': 16, '产品违规': 17,
    '提现困难': 18, '失联跑路': 19, '歇业停业': 20, '公司股市异常': 21
}

# 把问题转化为id
df[4] = pd.Series(query2id[i] for i in df[2])

# 但是其他-0是之前的任务分好的错误答案，可能会有分得不对的情况，为了避免影响模型，只采样少部分其他，来作为识别不出的类型
# 但是得要有其他类型，不然模型就会强制输出东西了
# random 文本

# 输出df中的原始文本（input）+问题id（label）
res = df[[4, 1]]

res.columns = ['label', 'review']

res = res.dropna()


series = pd.Series(
    greater512(review, 'ht') for review in res['review']
)

res['review'] = series

res.to_csv('data/event_detection_17815.csv')
